package demo9.teht;


import java.awt.*;
import java.awt.event.MouseEvent;
import java.awt.event.MouseMotionListener;
import javax.swing.JComponent;

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 *
 * @author Pasi
 */
public class T4_2Komponentti extends JComponent implements MouseMotionListener {
    // komponentin ominaisuudet
    private Image kuva;
    private int x,y;
    private int kokox,kokoy;
    
    // konstruktori
    public T4_2Komponentti(Image kuva, int kokox, int kokoy, int x, int y) {
        // määritellään komponentin koko
        setSize(new Dimension(kokox, kokoy));
        // kuva
        this.kuva = kuva;
        this.x = x;
        this.y = y;
        this.kokox = kokox;
        this.kokoy = kokoy;
        // sijainti
        setLocation(x,y);
        addMouseMotionListener(this);
    }
    
    @Override
    public void mouseMoved(MouseEvent e){}
    @Override
    public void mouseDragged(MouseEvent e){
        this.x += e.getX()-this.kokox/2;
        this.y += e.getY()-this.kokoy/2;
        setLocation(this.x,this.y);
        // siirretään kuva "päällimmäiseksi"
        Component component = e.getComponent();
        Container container = component.getParent();
        container.setComponentZOrder(component, 0);
    }
    
    // piirretään komponentti
    @Override
    public void paintComponent(Graphics g) {
    	super.paintComponent(g);
          g.drawImage(this.kuva,0,0,this);
      }
}
